#pragma once
# include "BindAbleInterface.h"

struct Vertex {
	float x; float y; float z;
	struct
	{
		float u;
		float v;
	} tex;
};

struct ID3D11Buffer;

class VertexBufferBindAble : public BindAbleInterface {
public:
	VertexBufferBindAble(ID3D11Device* _device, const Vertex* _vertices, size_t _vertex_size);
	void bind(ID3D11DeviceContext* _context) override;
	~VertexBufferBindAble() override;
private:
	Microsoft::WRL::ComPtr<ID3D11Buffer> m_buffer = nullptr;
	UINT m_stride = sizeof(Vertex);
	UINT m_offset = 0u;
};
